1. Field of the Invention
This invention relates to a system which helps to build a network-computer system as a client-server system and so on.
2. Description of the Prior Art
Building a client-server system requires the optimized allocation of processes and tables so that the characteristics required for the client-server system, such as performance and reliability, are satisfied as much as possible.
For example, when building a client-server system, the processes and tables should be allocated in each node according to problems consisted of the following factors:
(1) What processes make up a transaction that is run in the client-server system ? PA0 (2) What data does a running process handle? PA0 (3) In what table is the data stored? PA0 (4) What communication path and what communication speed does each node use for processing a transaction? PA0 (5) How much is each node affected by an unauthorized access? PA0 (6) From which node is each transaction entered?
Theoretically, there is an enormous number of allocation results that are solutions to the above mentioned problems. In building a client-server system, some of these allocation results, for example, performance, reliability, security, consistency, and costs, are taken into consideration. It is very difficult to find in these allocation results the allocation result which satisfies the characteristics, for example, performance, reliability, security, consistency, and costs as enough as a worker requires. Therefore, depending upon the characteristics on which the system will place emphasis according to its purpose or use, the optimized allocation varies although the factors described above are satisfied similarly. This means that, in building a system, appropriate allocation should be done taking two factors into consideration: requirements for system configuration and the characteristics required for the system.
3. Problems to be Solved by the Invention
Traditionally, the above-described allocation is done based on the know-how of the worker. And, there are some support systems which allow the worker to allocate objects via the graphical user interface. These prior arts were introduced in "C/S Application Development and Management Tools for Large-Scale Transactions" in the April, 1995, issue of Network Computing, pp. 99-pp. 103, or in "Second-Generation C/S System Development Environment for Implementing AP Partitioning" in the August, 1995, issue of Network Computing, pp. 108-pp. 113.
The traditional support system according to the prior art only helps the worker put the allocation results in order. However, as a client-server system evolves from the one-tier architecture to the two-tier architecture and then to the three-tier architecture, it becomes more and more difficult to decide the allocation of objects. Moreover, increase in number of machines and databases forming a client-server system accelerates the difficulty of the allocation. It is also difficult to allocate objects while evaluating the trade-off among the characteristics required for a client-server system. This means that, the worker must allocate a large number of objects with these difficulties. However, the traditional support system according to the prior art does not help the worker solve this problem, that is, it does not reduce what he must think.
A traditional support system tries to help the thinking of the worker as follows. That is, the support system creates a model of a client-server system to be built and, using supplied data, performs simulation to reproduce the behavior of the client-server system. However, this support system requires a large amount of data for simulating the complicated modeling of a client-server system to be built and the behavior of the client-server system. In addition, in most cases, the simulation takes long. For these reason, this support system is not suitable for the client-server system build task which must be done simply and quickly.
In Japanese Non-Examined Patent Publication No. 5-342303, there is disclosed a method for solving the problem of the worker having to wait for a long when building a client-server system. This prior art allows the worker, responsible for building a system, to evaluate the performance of the system to be built and then modify the system according to the evaluation result. This makes it possible the worker to progressively design the system while feeding back the evaluation results. And, shortening the cycle of this feed back speeds up the work.
However, the prior art described above requires the worker responsible for building the system to describe the allocation method. As described above, the allocation work, which is based on the know-how of the designer, is very difficult. Therefore, the designer responsible for building finds it still more difficult to describe the allocation and describing it is a burden for him.
In Japanese Non-Examined Patent Publication No. 5-2474, there is disclosed another approach to the effective allocation of processes and databases. This prior art provides means for using some components or typical examples of the system to be built as parts which can be re-used, thus speeding up the design work. However, in this prior art, the worker responsible for building a client-server system must explicitly specify the parts to be used. Not only that, when the worker re-uses parts, he must modify the parts according to his needs.
The above problems are those about the technique of the help with the worker responsible for building a client-server system. But, not only the worker responsible for building a client-server system but also the developer responsible for developing the client-server system build-up system has problems. That is, creating a system which gives the strictly optimized, effective allocation results requires the developer to prepare complicate solutions. This makes the development work difficult.
To solve the above-mentioned problem, it is an object of the present invention to provide a network-computer system build support system which quickly gives the worker, responsible for building a client-server system, an allocation result which is generated by simply entering a small amount of data and which eliminates the need for the worker to devise an allocation method. The allocation result thus generated may not be the strictly optimized result but is effective enough to satisfy the characteristics required for a client-server system.
It is a further object of the present invention to provide a network-computer system build support system which, if a generated allocation result is not effective enough, allows the worker to enter supplementary informations to quickly produce a more effective allocation. Repeating the process of entering supplementary information and producing an allocation, the result becomes effective enough.
It is yet another object of the present invention to provide a network-computer system build support system which employs the above-mentioned repetitive process to eliminate the need for the developer of the network-computer system build support system to have to develop a complicated solution in order to generate an allocation result that is effective enough.
It is still another object of the present invention to provide a network-computer system build support system which, when a client-server system that was built in the past is re-modeled or extended, gives the worker, responsible for building a client-server system, a lot of useful information and thus increases the working efficiency. In particular, it is an object of the present invention to generate an allocation result that is effective enough by automating the means for making use of past cases while minimizing the load on the worker responsible for building a client-server system.